{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "year=2019\n",
    "month=6"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Developer Salary in First-Tier Cities 程序员工资调查\n",
    "我在4月1日到3日之间，抓取了某招聘网站的软件和互联网类招聘数据40万条，其中通过程序判断为程序员的14万条。地域方面，我选择了24个主要城市。不过本文只以一线城市为研究对象。这样是为了和我2017年6月的数据做对比。\n",
    "\n",
    "提到2017年的文章，现在居然还有很多人，把这篇文章拿出来炒作。对于社会来说，可气的是，他们直接把2017改成2019，就发表了，这不是骗人么？！对于我来说，可气的是，他们转载居然还冒充是原创，是可忍熟不可忍！"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import sys\n",
    "sys.path.append('..')\n",
    "sys.path.append('../py')\n",
    "sys.path.append('../../py')\n",
    "import db\n",
    "import inspect\n",
    "import matplotlib.pyplot as plt\n",
    "plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签\n",
    "plt.rcParams['axes.unicode_minus']=False #用来正常显示负号\n",
    "import seaborn as sns\n",
    "import scipy.stats as stats\n",
    "import numpy as np\n",
    "import weighted\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "conn=db.get_conn()\n",
    "data_original=pd.read_sql(sql=f\"select * from _{year}{month:02} where monthly_salary>0 and monthly_salary<80000 and city in ('北京','上海','广州','深圳')  and monthly_salary<80000 and YEAR(publish_date)={year}\", con=conn)\n",
    "conn.close()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "error_job_ids=['104660258','104142922','108434795','101357291','106253516','110368302','111391233','108665401','109277048'\n",
    "                  ,'73857191','108584955','102824950','102824949','111391233','110884556']\n",
    "data=data_original[~data_original.job_id.isin(error_job_ids)]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "#del data['publish_date']\n",
    "#del data['published_on_weekend']\n",
    "#del data['title']\n",
    "#del data['title']\n",
    "#del data['company_title']\n",
    "#del data['company_description']\n",
    "#del data['job_description']\n",
    "#del data['job_id']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "def pd_weighted_mean(group, avg_name, weight_name):\n",
    "    \"\"\" http://stackoverflow.com/questions/10951341/pandas-dataframe-aggregate-function-using-multiple-columns\n",
    "    In rare instance, we may not have weights, so just return the mean. Customize this if your business case\n",
    "    should return otherwise.\n",
    "    \"\"\"\n",
    "    d = group[avg_name]\n",
    "    w = group[weight_name]\n",
    "    try:\n",
    "        return (d * w).sum() / w.sum()\n",
    "    except ZeroDivisionError:\n",
    "        return d.mean()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Unilateral Stats 总体统计"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "有数据可知，程序员向一线城市集中的趋势非常明显。\n",
    "\n",
    "According to the statistics, significant amount of developers are in the first tier cities."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(48069, 94)"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "150520"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.headcount.sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 4500.        , 10499.28571429, 13500.        , 19000.        ,\n",
       "       37500.        ])"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "salary_mean=weighted.weighted_mean(data.monthly_salary.values, data.headcount.values)\n",
    "q=weighted.weighted_quantile(data.monthly_salary.values,[0.025,0.25,0.5,0.75,0.975], data.headcount.values)\n",
    "q"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2019年6月中国一线城市程序员的平均工资为15671元，工资中位数为13500元，其中95%的人的工资位于4500到37500元之间。\n"
     ]
    }
   ],
   "source": [
    "print(f'{year}年{month}月中国一线城市程序员的平均工资为{salary_mean:.0f}元，工资中位数为{q[2]:.0f}元，其中95%的人的工资位于{q[0]:.0f}到{q[4]:.0f}元之间。')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "In 2019, Developers in China earn 15671 Yuan as average, the median is 13500 Yuan, 95% of them earn between 4500 and 37500 Yuan.\n"
     ]
    }
   ],
   "source": [
    "print(f'In {year}, Developers in China earn {salary_mean:.0f} Yuan as average, '\n",
    "      f'the median is {q[2]:.0f} Yuan, 95% of them earn between {q[0]:.0f} and {q[4]:.0f} Yuan.')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x1e4898c0408>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data.monthly_salary.hist()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It does not look like normal distribution."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "from scipy import stats"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "NormaltestResult(statistic=16161.56545740752, pvalue=0.0)"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.normaltest(data.monthly_salary)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "null hypothesis: x comes from a normal distribution\n",
    "    \n",
    "p=0\n",
    "\n",
    "The null hypothesis can be rejected\n",
    "\n",
    "conclusion: data is not normally distributed."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Zoom in"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAD2CAYAAAA6eVf+AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAe/0lEQVR4nO3de3xU9Z3/8ddHCBIZLgFh5KaI4AUN12hBUScW6lpb23plF2utXVOrP/vQZbebPure/G1/tf1Vt62P9ZJWXXe3NUX8rZdKrW0lliKIBi9RvCAahHBRuYXhIgQ+vz9mgiFMyJnJZObIeT8fjzwy+ZyTc97nOzOfOXPOXMzdERGRaDii2AFERKRw1PRFRCJETV9EJELU9EVEIkRNX0QkQnoWO8ChHH300T5q1KiM07Zv306fPn0KGygLYc4X5mwQ7nxhzgbhzhfmbBDufNlmq6+v/8jdB2ec6O6h/ZkyZYp3ZMGCBR1OC4Mw5wtzNvdw5wtzNvdw5wtzNvdw58s2G/Cid9BXdXhHRCRC1PRFRCJETV9EJELU9EVEIkRNX0QkQtT0RUQiRE1fRCRC1PRFRCIkUNM3s7iZLWxXe8LMJqYvl6T/XmRm12RTExGRwun0YxjMrAx4EOjTpjYbWOnuL6dLNwL17v7PZjbfzB4Grg1Sc/dted+qiBpV/WSg+eaUt3B1wHmDarztwrwuT0S6h3kn35xlZv0AAx5z94SZDQSWA3cDf3L3BWb2OFDt7svNrBp4Hrg5SM3dF7RbXxVQBRCPx6fU1tZmzJVMJonFYrlveTcrRr6Gpq2B5ouXwoad+V13+fD+eVtWmK/bMGeDcOcLczYId75ss1VWVta7e0WmaZ3u6bt7M4CZtZZuBh4G7gV+YGZ9ST0LaEpP3wTEs6i1X18NUANQUVHhiUQiY666ujo6mhYGxcgXdO99TnkLtzfk97P2Gmcn8rasMF+3Yc4G4c4X5mwQ7nz5zJbLidxJwL+7+3pgLpAAkkBpenosvdygNRERKZBcmu47wOj05QpgFVAPTE/XJgCNWdRERKRAcnmO/yPgF2b2PWAHcDEwEJhvZmcD40gdv28KWBMRkQIJvKfv7on077Xu/nl3P8vdZ7r7NndfBcwEFgEz3H1v0Fq+N0hERDqWt7N57r6W1DH+rGsiIlIYOpEqIhIhavoiIhGipi8iEiFq+iIiEaKmLyISIWr6IiIRoqYvIhIhavoiIhGipi8iEiFq+iIiEaKmLyISIWr6IiIRoqYvIhIhavoiIhGipi8iEiFq+iIiEaKmLyISIYGavpnFzWxhu9ppZvb79OUSM3vCzBaZ2TXZ1EREpHA6bfpmVgY8CPRpUzPgDqAkXboRqHf3s4BLzaxvFjURESkQc/dDz2DWDzDgsdYvR0/vpceB8909YWaPA9XuvtzMqoHngZuD1Nx9Qbv1VQFVAPF4fEptbW3GXMlkklgslut2d7ti5Gto2hpovngpbNiZ33WXD++ft2WF+boNczYId74wZ4Nw58s2W2VlZb27V2Sa1ukXo7t7M0Bq5x7MbBBwJXB++gdSzwKa0pc3kXpACFprv74aoAagoqLCE4lExlx1dXV0NC0MipHv6uonA803p7yF2xs6veqz0jg7kbdlhfm6DXM2CHe+MGeDcOfLZ7ZcTuTeBnzX3fe0qSWB0vTlWHq5QWsiIlIguTTdc4EfmlkdMNHM/hWoB6anp08AGrOoiYhIgWT9HN/dT2y9bGZ17n6LmR0HzDezs4FxpI7fNwWsiYhIgQTe0289iZup5u6rgJnAImCGu+8NWuvyFoiISGB5O5vn7muBubnURESkMHQiVUQkQtT0RUQiRE1fRCRC1PRFRCJETV9EJELU9EVEIkRNX0QkQtT0RUQiRE1fRCRC1PRFRCJETV9EJELU9EVEIkRNX0QkQtT0RUQiRE1fRCRC1PRFRCIkUNM3s7iZLUxfPtbM6szsGTOrsZQSM3vCzBaZ2TXp+QLVRESkcDpt+mZWBjwI9EmXvgl8y93PA0YC5cCNQL27nwVcamZ9s6iJiEiBmLsfegazfoABj7X/nlwzWwp8GbgHqHb35WZWTeoLz28OUnP3Be2WWQVUAcTj8Sm1tbUZcyWTSWKxWLbbWzDFyNfQtDXQfPFS2LAzv+suH94/b8sK83Ub5mwQ7nxhzgbhzpdttsrKynp3r8g0rdPvyHX3ZgAzO6BuZlcAr7v7WjPrAzSlJ20C4qSeGQSptV9fDVADUFFR4YlEImOuuro6OpoWBsXId3X1k4Hmm1Pewu0Neft6ZAAaZyfytqwwX7dhzgbhzhfmbBDufPnMltOJXDMbDfwtcFO6lARK05dj6eUGrYmISIFk3XTTx/gfAq5x99bjCfXA9PTlCUBjFjURESmQXJ7jVwPHAnemD/n8E6kTvfPN7GxgHKnj900BayIiUiCB9/RbT+K6+9+7+1B3T6R/nnX3VcBMYBEww933Bq3le4NERKRjeTub5+5rgbm51EREpDB0IlVEJELU9EVEIkRNX0QkQtT0RUQiRE1fRCRC1PRFRCJETV9EJELU9EVEIkRNX0QkQtT0RUQiRE1fRCRC1PRFRCJETV9EJELU9EVEIkRNX0QkQtT0RUQiRE1fRCRCAjV9M4ub2cL05RIze8LMFpnZNV2tiYhI4XTa9M2sjNQXn/dJl24E6t39LOBSM+vbxZqIiBSIufuhZzDrBxjwmLsnzOxxoNrdl5tZNfA8cHOuNXdf0G59VUAVQDwen1JbW5sxVzKZJBaL5b7l3awY+RqatgaaL14KG3bmd93lw/vnbVlhvm7DnA3CnS/M2SDc+bLNVllZWe/uFZmmdfrF6O7eDGBmraU+QFP68iYg3sVa+/XVADUAFRUVnkgkMuaqq6ujo2lhUIx8V1c/GWi+OeUt3N7Q6VWflcbZibwtK8zXbZizQbjzhTkbhDtfPrPlciI3CZSmL8fSy+hKTURECiSXplsPTE9fngA0drEmIiIFkstz/AeB+WZ2NjCO1LH6pi7URESkQALv6bt7Iv17FTATWATMcPe9XanldWtEROSQcjqb5+5rgbn5qomISGHoRKqISISo6YuIRIiavohIhKjpi4hEiJq+iEiEqOmLiESImr6ISISo6YuIREh+P2pRpMBGBfxk0XyZU97C1dVP0njbhQVdr0i+aE9fRCRC1PRFRCJETV9EJELU9EVEIkRNX0QkQtT0RUQiRE1fRCRC1PRFRCIk66ZvZmVmNt/MXjSze9O1+8xssZnd0ma+QDURESmcXPb0vwr80t0rgL5m9h2gh7tPA0ab2VgzuzhILW9bISIigZi7Z/cPZrOB04AfAk8ArwFPuPt8M5sFlAKTgKc6q7n7AxmWXwVUAcTj8Sm1tbUZcySTSWKxWFbZC6kY+RqatgaaL14KG3bmd93lw/vnbVnZjF3Qbc6X1rHL5/bmU5jvF2HOBuHOl222ysrK+vSO+UFy+eydPwMXAt8G3gB6AU3paZuAyUCfgLWDuHsNUANQUVHhiUQiY4i6ujo6mhYGxch3dcDPoZlT3sLtDfn92KXG2Ym8LSubsQu6zfnSOnb53N58CvP9IszZINz58pktl8M7/wRc5+63Am8Cf0VqTx4gll5mMmBNREQKKJfGWwaUm1kP4DPAbcD09LQJQCNQH7AmIiIFlMtz/B8ADwDHAYuBfwMWmtkw4AJgKuABayIiUkBZ7+m7+1J3P9XdY+4+092bgQSwBKh0961Ba/naCBERCSYvZ/PcfTMwN5eaiIgUjk6miohEiJq+iEiEqOmLiESImr6ISISo6YuIREh+34svkTUqjx+HMKe8peAfryASFdrTFxGJEDV9EZEIUdMXEYkQNX0RkQhR0xcRiRA1fRGRCFHTFxGJEDV9EZEIUdMXEYkQNX0RkQjJuemb2V1m9sX05fvMbLGZ3dJmeqCaiIgUTk5N38zOBo5x9yfM7GKgh7tPA0ab2digtbxthYiIBJJ10zezEuDnQKOZfYnU9962fgXi08D0LGoiIlJA5u7Z/YPZN4ALgeuBG4FqYLK7v2JmnwMmA2OBn3VWc/fbMiy/CqgCiMfjU2prazPmSCaTxGKxrLIXUjHyNTQF+675eCls2NnNYbogzPlas5UP71/sKBmF+X4R5mwQ7nzZZqusrKx394pM03L5aOVJQI27rzez/wbOBErT02Kknj0kA9YO4u41QA1ARUWFJxKJjCHq6uroaFoYFCNf0I8jnlPewu0N4f1U7TDna83WODtR7CgZhfl+EeZsEO58+cyWyzH9d4DR6csVwCg+OVQzAWgE6gPWRESkgHLZnboPuN/MZgElpI7VP25mw4ALgKmAAwsD1EREpICy3tN3923ufpm7n+Pu09x9FanGvwSodPet7t4cpJavjRARkWDycuDU3TfzyStzsqqJiEjh6B25IiIRoqYvIhIhavoiIhGipi8iEiFq+iIiEaKmLyISIeF8r/un3KjqJ5lT3hL4YxFERApFe/oiIhGipi8iEiFq+iIiEaKmLyISIWr6IiIRoqYvIhIhavoiIhGipi8iEiFq+iIiEaKmLyISITk3fTOLm9lL6cv3mdliM7ulzfRANRERKZyu7On/GCg1s4uBHu4+DRhtZmOD1roeX0REsmHunv0/mZ0HXA6cDLwKPOXu881sFlAKTApSc/cHMiy7CqgCiMfjU2prazNmSCaTxGKxrLMXQkPTVuKlsGFnsZNkFuZsEO58rdnKh/cvdpSMwny/CHM2CHe+bLNVVlbWu3tFpmlZf8qmmfUC/gH4CvAo0AdoSk/eBEzOonYQd68BagAqKio8kUhkzFFXV0dH04rt6vSnbN7eEM4PMQ1zNgh3vtZsjbMTxY6SUZjvF2HOBuHOl89sudyzqoG73H2LmQEkSe3JA8RIHTIKWhP5VBpVxI/NbrztwqKtWz79cmm8M4AbzKwOmAh8EZienjYBaATqA9ZERKSAst7Td/dzWi+nG/9FwEIzGwZcAEwFPGBNREQKqEuHWNw94e7NQAJYAlS6+9agta6sW0REspeXs2XuvhmYm0tNREQKRydTRUQiRE1fRCRC1PRFRCJETV9EJELU9EVEIkRNX0QkQtT0RUQiRE1fRCRC1PRFRCJETV9EJELU9EVEIkRNX0QkQtT0RUQiRE1fRCRC1PRFRCJETV9EJELy8iUqIlI4h/pS9jnlLVzdTV/ari9kPzxkvadvZv3N7Ldm9rSZ/Y+Z9TKz+8xssZnd0ma+QDURESmcXA7vzAbucPfPAeuBWUAPd58GjDazsWZ2cZBavjZCRESCMXfP/Z/N5gH9gJ+4+3wzmwWUApOApzqrufsDGZZZBVQBxOPxKbW1tRnXnUwmicViOWfvTg1NW4mXwoadxU6SWZizQbjzhTkbdG++8uH9u/T/Yb7PQrjzZZutsrKy3t0rMk3L+Zi+mU0DyoBGoCld3gRMBvoErB3E3WuAGoCKigpPJBIZ119XV0dH04rt6uonmVPewu0N4TxlEuZsEO58Yc4G3ZuvcXaiS/8f5vsshDtfPrPl9OodMxsI3AlcAyRJ7ckDxNLLDFoTEZECyuVEbi/gYeC77r4KqAempydPILXnH7QmIiIFlMvzwG+QOjTzPTP7HvAA8FUzGwZcAEwFHFgYoCYiIgWU9Z6+u9/t7mXunkj/PAgkgCVApbtvdffmILV8bYSIiASTlzM+7r4ZmJtLTURECie8L0MQkVA51DuBg+jKu4X1buD80StoREQiRE1fRCRC1PRFRCJETV9EJEIO2xO5XT3pJCJyONKevohIhBy2e/oicvgoxDP3TC8pPRxfKqo9fRGRCFHTFxGJEDX9Ipt1+shAtcPF4bBtJT2MSyYPL3YMkZxEuunfNGMsU0cPPKA2bmg/xg3t12ktHz57yhDeXL+t01p7//iFcQf8PaKs9IDtuHTKCC6dMqLT9QedL1/ab9vg2JF869wTclpW2zEo9HZcOmUEi1du3P/3uKH9Drn+H182nhFlpR1OFykknchtZ9ywVHNfvq75kLV8mDBiAHf8/u1Oa+3d+pvlB/ydavqDWPLuprzmy7f22/Zh8mPufnZlTstqPwaF0rNHD8qO6sXarbv215ava877bUPCoZgv/e6uk8iRb/rTxwzm5pkn0vfInry+tpnJx5YB8JVJw5n9i+f5zvkncf6pxxxQu2nGWCaOHEBpSQ82bt/NjQ+9xN59zh2XT2B4WSkte53Xlj2/fx33XDmF6/67/oD1fmH8UOY3rDtk7SdXTOS4QUexvnkXTZt38q9PvgFAbdVUZtUsAeDrZ43isikj6FdawtTRg7j+l8sAOGVoX3517WcYHDuSG361jPEjBgAwr34Nw4cM4qYZQ1izeScXTRjGJZNH8HHLXm745TK2796bcZxuqBzDeScPwYDvPPIq73yQ5PrECXz2lDi79uzlO/Ne5eaZYykt6cnwAb1Z17yLj/fs46Zfv9zh9o4oK+WmGWP524df5aYZY1ny7kaWvLuJk0eP5NJePbhq2nF8/YEXeOqmc/j8zxbyo0vG8/X/eOGgMWg1dkiMW790Gn/94Atce87o/ctr3Quf37COu2dPprRXT1Zt3M7fzUutt+cRR3D68WX0PbInX7v/BZp37eHer05hQGkJqzbt4K3127irLvXgNG7Mccx5avUB6506eiBTRw/iJ39YQf/SEm6/fAL9epfwWtPW/Q9O1X9xMsf0780ra7bwv3/zRsYxPrLnEdw1ezKx3j3ZsmMP1/9yGTeeN+ag7ZhXv4baqqm8snoLpwztx1X3L+WGyjGs2LANaOL6xAk0btzOM29+wB2XT2RQrBdvrd/GPz72OjfPGMs7HyR54tV13DRjLCvTlyU6In14B2DUoKO44t4lPPX6ehau+Ii7n13J3c+uZPYvUk37R79766AawNL3NnFFzRI+Sn7MzHFxBhxVwilD+3HFvUu485kV9Cop2T9v+4bf4whjzJDYAYc62tf6l5YwKNaLr9z1HCPLjtrf8Nt7YFEjt/5mOfPq1zCrZgmbtu8GYPyIAVx131LufnYlM06Jd7j965t38Zc/X5Lang6Ot598TF9OH1XGJXc/x62/Wc7EkQM4Kd6XqaMHccndz3HnMyuovuBkAP5rSSO79zrff/INhg7o3eH2BvH+ph2cc+JgXlmzhXPGHs1razv+CoYhfY/kp7Mm8u2HXurwgWtI3yP5j+dWceUvnmdE2VEcHesFHHgbmHbCIMYMibFu6y4uvWcxxw3qs7/h9z2yJz2OMD5K7u4wxw2VY3jilbVcfu9i+vbuybknDgbgmbc+4NJ7FjN2SN8ODxWOjcfY53DFvUt4+MXV9OnVo8P1TBo5gGXvb+Gq+5cCqQe0xEmpdZ1x/EAWvPkhf3XGsby9YRtX3LuEIX17c/IxfXlkWRMXTUydjzhn7GCeXr6hw3XI4SnyTf+RZanval+7ZRe9egYfjteaUg3ozXXbGFFWypYde5hXv4b/vOYMLpsykj0tLR3+71cmDefRl5oOWdu1Zy+9eh7Bo9efyaMvN7VfRKcef3ktLfuctVt2HrRdPXt+0kxefn/L/u05dlCfjMs6YXCMV9ektvfl1Vt4ZNkaxgyJ8cqa1P++9P4WxgyJAbBm8072ubNm807cO97eQ+nZI5Xv9aZmLhw/lAVvfsDny4fuH/NMrpo2inVbdzE8w7Hz3untb9nnzDpjJD+ZNZEBR5XQuyS1nva3gfVbd1E+vD9zvzmNBxa9t385s844luUr3z9k9rFDYry8OjUuL6/+ZFwOHOejMv7va03NvL1hG/95zRmcc+Jgdu458MGrd5vr8a0N2/jd6+v3//3eR9s5pn8pJT170rxzDzv37GX04Bjnn3oMtVVTOXZgKcf06837m3YQO7InU0cP5K0N2/i4Zd8ht0cOP5Fv+jv3HNicd+3Zu78ZHKo2YWTqcMmpw/qxauMOhvbvzeYdu7nq/qWsb97FCSOHZlxfrx5HMLR/bxo37jhkbcLIATz9+ga+fNdz/GLhe5kW1SbfvoPytW8Yu1v2MbBPas/2uKGf7PmfNrw/ACcP7ceazTvIZOWHScrT8005rox/u3wiKz7YxoT0IaNJxw7g7Q2Z9+IzbVsmB+YbAsDra7dy5gmD+PM7H3HOiYN5ranj4+Z3PrOCWx59jb+ZeeJByzs3vQd8ecVI5jes49sPvcSONs8G2t8Gzj1pMHc+s4KL736Ox15eC8DAPr1o2bePj3fvOeR2vL1hG5NGpg4Rth2XIOM8bmg/XmzczFX3L6V/aQmnjxqYcTuAA/K3emX1FiaePJo/vPEBAO9+mOT+P7/HrJol/Pjpt2nashOAJ15Zy48umcD/W7bmkNsih6eCN30zu8/MFpvZLYVedxALV3zEX5x6DPOum8YZxw/ssDZ+xABqq6bSr7SEP76xgQ+3fcxnT44z77ppnHnCIFav/3D/Mu+5csr+y5dVjGBe/YF3tky1lR8k+cb043no2qncfeVkTh9V1mHm19du5YTBfZj7zWl8cXzmB5vFKzfy2VOGcOuXTsWOsP3144/uQ23VVKaPOZpfL119UF6AN9dvY9n7m5l33TT+7vyT+OkfV/D2hiRL3t3II986kxvPG8uPnnor43ozbVurI3v2YHd6T/MPb2zga2eO4vtfPo1du1OHT15b20zT5p28v2kHG5O79zetTD5u2ce6rbtY+WGSGacMOWB5m3ekGvWf3/mI6xNj+NW1qa9njvfrnXFZrzc1888Xncqvrv0Md/7lJE6Mx5h1+kh+/cLqjPP3brMdd9Wt5IsThvLwddNo3tnCwhUfAfD58qHMu24aqzft6PDBa83mHXz9rFE88q0zGdz3SBrWbM24HR15smEdE08+gT++kTpk89DS1Zx70mB+/c2pzP7MsaxLn3ye/9o6HOeFxs2HXJ4cnsxbn4MXYmVmFwMXufvVZnY/8AN3X9HR/BUVFf7iiy9mnFZXV0cikehwXd151r3tSceOzClv4faGg8+TD+rTi43bd3daqzxpCNedO5rde/exa88+Hn+5KW8n3DrK1h0ybVtJD2PuN6exz+GHT73J0vcOHMdC5stk1ukjuWjiMFr2Onv27uPnC99lxYYkG7fvPiDbiLJSfjZrEnvdqX6kgZUfJouWuVVnYzd2SIz/e9kEfvX8+8x9MfODWHcp9vXambDla/vqnc76XXtmVu/uFRmnFbjp/wx4yt3nm9ksoNTdH2g3TxVQlf7zJCDzLiQcDXzUbWG7Lsz5wpwNwp0vL9mef/75k9r+vW3btpYZM2bk9vrVAx32Y9eNwpwv22zHufvgTBMK/bDWB2g9o7cJmNx+BnevAWo6W5CZvdjRI1kYhDlfmLNBuPN1Z7Z87IBFdezyIcz58pmt0Mf0k0DryytiRVi/iEikFbrp1gPT05cnAI0FXr+ISKQV+vDOo8BCMxsGXABM7cKyOj0EVGRhzhfmbBDufGHOBuHOF+ZsEO58ectW0BO5AGZWBswE/uTu6zubX0RE8qfgTV9ERIpHJ1JFJGdmNtDMZprZ0cXO0l6YsxXTp7LpF/NdvWbW08zeN7O69E+5mf2Lmb1gZv/eZr5AtTxni5vZwvTlEjN7wswWmdk1Xa3lOdtwM1vTZgwHp+sHXa9Ba13I1d/MfmtmT5vZ/5hZr67kKEC2A2576fmKcvtLH6r9DXAGsMDMBodo7DJlC83YtVlu3MxeSl8uyNh96pq+pd7V28PdpwGjzWxsgSOMBx5y94S7J4BepF6RdAbwgZnNMLMpQWr5DJW+kT9I6r0QADcC9e5+FnCpmfXtYi2f2T4DfL91DN39w0zXa9BaV7IBs4E73P1zwHpgVq45CpCtmja3PXdvCHpb66bb33jgb9z9+8DvgPMIz9i1z3YN4Rq7Vj8GSrsyTtmO3aeu6QMJYG768tN88hLQQpkKfMHMlprZfcBngUc8dXLkd8DZwLkBa/m0F7gCaP1glwSfjNOfgIou1vKZbSrw12a2zMz+T4a8rddr0FrO3P0ud/99+s/BwJVdyNHd2Vpoc9szs54Ev63l/fbn7s+6+xIzO4dUQzyf8Ixd+2w7CdHYAZjZecB2Ug/oCQo0dp/Gpt/+Xb0df1h893gBmOHuZwAlpN5s1j5Ppozdmtvdm9297WcPB83Q7VkzZPstqRvq6cA0MxtfrGytzGwaUAas7kKO7s72ew687X0+BNmM1AP6ZsC7kCXv+dple4kQjZ2Z9QL+gdSzN7qYJat8n8amX+x39b7q7q2ffPZiB3mC1rpTV3J1d9bn3H2bu+8ldWccW8xsZjYQuJPUIYBQjVu7bO1ve0UdNwBPuQF4FTizC1nynq9dtmEhG7tq4C5335L+u2C3u09j0y/2u3r/y8wmmFkP4MukHmXb58mUsdC5g2YoRtbfmdlQMzsK+BzwWrGypfe4Hga+6+6rupiju7O1v+29Uqxs6Xx/b2ZXpf8cANzWhSz5Hrv22e4J09gBM4AbzKwOmAh8sQtZssvn7p+qH6AfqSvsDuANoH+B138aqT2HBuD7pB44FwE/JfWJoMcHrXVTvrr07+OA19PrewHo0ZVanrNVAm+mx/F/dXS9Bq11MdO3SD39r0v/fC3XHAXI9k9tb3vpeYp2++OTQ05/Au5Kj0FYxq59tvIwjV37+0VXxinbsct70ynET/oKvRw4pthZ0nlKgUuB0dnWujnXsPQ49c9HrRjXa9BaWHIU47YZptufxi78Y6d35IqIRMin8Zi+iIjkSE1fRCRC1PRFRCJETV9EJELU9EVEIuT/Axhd7ydl7i5SAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data[data.monthly_salary<40000].monthly_salary.hist()\n",
    "plt.annotate('https://github.com/juwikuang/job_survey', xy=(0,0), xytext=(2000, 100), color='white')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Role 角色"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Common Functions\n",
    "def get_sub_stats_by_col(data, col):\n",
    "    categories=data[col].unique()\n",
    "    salary_mean=[]\n",
    "    salary_95_min=[]\n",
    "    salary_95_max=[]\n",
    "    salary_median=[]\n",
    "    \n",
    "\n",
    "    count=[]\n",
    "    \n",
    "    categorys_out=[]\n",
    "    for category in categories:\n",
    "        #print(feature)\n",
    "        idata=data[data[col]==category]\n",
    "        headcount=idata.headcount.sum()\n",
    "        values = idata.monthly_salary.values\n",
    "        weights = idata.headcount.values\n",
    "        #print(str(headcount))\n",
    "        if headcount==0:\n",
    "            continue\n",
    "        \n",
    "        salary_mean.append(np.average(values, weights=weights))\n",
    "        \n",
    "\n",
    "        q = weighted.weighted_quantile(values,[0.025,0.5,0.975],weights)\n",
    "        salary_95_min.append(q[0])\n",
    "        salary_median.append(q[1])\n",
    "        salary_95_max.append(q[2])\n",
    "        count.append(idata.headcount.sum())\n",
    "        categorys_out.append(category)\n",
    "    sub_data=pd.DataFrame()\n",
    "    sub_data[col]=[c for c in categorys_out]\n",
    "    sub_data['salary_mean']=salary_mean\n",
    "    sub_data['salary_95_min']=salary_95_min\n",
    "    sub_data['salary_median']=salary_median\n",
    "    sub_data['salary_95_max']=salary_95_max\n",
    "    sub_data['head_count']=count\n",
    "    sub_data['percentage']=count/np.sum(count)\n",
    "    sub_data=sub_data.sort_values(by='salary_mean', ascending=False)\n",
    "\n",
    "    return sub_data\n",
    "\n",
    "def get_sub_stats_by_prefix(data, prefix):\n",
    "    \n",
    "    features = [feature for feature in data.columns if feature.startswith(prefix)]\n",
    "    salary_mean=[]\n",
    "    salary_median=[]\n",
    "    salary_95_min=[]\n",
    "    salary_95_max=[]\n",
    "    count=[]\n",
    "    \n",
    "    features_out=[]\n",
    "    for feature in features:\n",
    "        #print(feature)\n",
    "        idata=data[data[feature]==1]\n",
    "        headcount=idata.headcount.sum()\n",
    "        values = idata.monthly_salary.values\n",
    "        weights = idata.headcount.values\n",
    "        #print(str(headcount))\n",
    "        if headcount==0:\n",
    "            continue\n",
    "        \n",
    "        salary_mean.append(weighted.weighted_mean(values, weights))\n",
    "        q = weighted.weighted_quantile(values,[0.025,0.5,0.975],weights)\n",
    "        salary_median.append(q[1])\n",
    "        salary_95_min.append(q[0])\n",
    "        salary_95_max.append(q[2])\n",
    "        count.append(idata.headcount.sum())\n",
    "        features_out.append(feature)\n",
    "    sub_data=pd.DataFrame()\n",
    "    sub_data['rank']=range(0,len(features_out))\n",
    "    sub_data[prefix]=[f.replace(prefix,'') for f in features_out]\n",
    "    sub_data['salary_mean']=salary_mean\n",
    "    sub_data['salary_median']=salary_median\n",
    "    sub_data['salary_95_min']=salary_95_min\n",
    "    sub_data['salary_95_max']=salary_95_max\n",
    "    sub_data['head_count']=count\n",
    "    sub_data['percentage']=count/np.sum(count)\n",
    "    sub_data=sub_data.sort_values(by='salary_mean', ascending=False)\n",
    "    sub_data['rank']=range(1,len(features_out)+1)\n",
    "    #sub_data=sub_data.reset_index()\n",
    "    return sub_data\n",
    "\n",
    "def apply_style(sub_data):\n",
    "    return sub_data.style.hide_index().format(\n",
    "    {\"salary_mean\":\"{:.0f}\",\"salary_median\":\"{:.0f}\",\"salary_95_min\":\"{:.0f}\",\"salary_95_max\":\"{:.0f}\",\"percentage\":\"{:.2%}\"})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031ef\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >career</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031eflevel0_row0\" class=\"row_heading level0 row0\" >2</th>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow0_col0\" class=\"data row0 col0\" >系统架构师</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow0_col1\" class=\"data row0 col1\" >24938</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow0_col2\" class=\"data row0 col2\" >5250</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow0_col3\" class=\"data row0 col3\" >22500</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow0_col4\" class=\"data row0 col4\" >52500</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow0_col5\" class=\"data row0 col5\" >6316</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow0_col6\" class=\"data row0 col6\" >4.20%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031eflevel0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow1_col0\" class=\"data row1 col0\" >算法工程师</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow1_col1\" class=\"data row1 col1\" >22686</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow1_col2\" class=\"data row1 col2\" >6000</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow1_col3\" class=\"data row1 col3\" >20833</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow1_col4\" class=\"data row1 col4\" >45833</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow1_col5\" class=\"data row1 col5\" >13529</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow1_col6\" class=\"data row1 col6\" >8.99%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031eflevel0_row2\" class=\"row_heading level0 row2\" >3</th>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow2_col0\" class=\"data row2 col0\" >爬虫工程师</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow2_col1\" class=\"data row2 col1\" >16298</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow2_col2\" class=\"data row2 col2\" >3750</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow2_col3\" class=\"data row2 col3\" >15000</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow2_col4\" class=\"data row2 col4\" >37500</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow2_col5\" class=\"data row2 col5\" >340</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow2_col6\" class=\"data row2 col6\" >0.23%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031eflevel0_row3\" class=\"row_heading level0 row3\" >0</th>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow3_col0\" class=\"data row3 col0\" >一般程序员</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow3_col1\" class=\"data row3 col1\" >14493</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow3_col2\" class=\"data row3 col2\" >4500</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow3_col3\" class=\"data row3 col3\" >12500</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow3_col4\" class=\"data row3 col4\" >32500</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow3_col5\" class=\"data row3 col5\" >130285</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow3_col6\" class=\"data row3 col6\" >86.56%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031eflevel0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow4_col0\" class=\"data row4 col0\" >生物信息工程师</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow4_col1\" class=\"data row4 col1\" >9820</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow4_col2\" class=\"data row4 col2\" >4500</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow4_col3\" class=\"data row4 col3\" >8875</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow4_col4\" class=\"data row4 col4\" >17187.5</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow4_col5\" class=\"data row4 col5\" >50</td>\n",
       "                        <td id=\"T_ca84a646_2f5d_11ea_ac95_701ce71031efrow4_col6\" class=\"data row4 col6\" >0.03%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1e487fb7f08>"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_career = get_sub_stats_by_col(data,'career')\n",
    "data_career.style.format({\"salary_mean\":\"{:.0f}\",\"salary_median\":\"{:.0f}\",\"percentage\":\"{:.2%}\"})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "15670.540539463194"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.sum(data.monthly_salary * data.headcount) / data.headcount.sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "150520"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.headcount.sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count    48069.000000\n",
       "mean         3.131332\n",
       "std          3.371964\n",
       "min          1.000000\n",
       "25%          1.000000\n",
       "50%          2.000000\n",
       "75%          5.000000\n",
       "max        200.000000\n",
       "Name: headcount, dtype: float64"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.headcount.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>job_id</th>\n",
       "      <th>monthly_salary</th>\n",
       "      <th>headcount</th>\n",
       "      <th>title</th>\n",
       "      <th>zhinengleibie</th>\n",
       "      <th>career</th>\n",
       "      <th>real_province</th>\n",
       "      <th>province</th>\n",
       "      <th>city</th>\n",
       "      <th>company_description</th>\n",
       "      <th>company_size</th>\n",
       "      <th>company_title</th>\n",
       "      <th>company_type</th>\n",
       "      <th>page_title</th>\n",
       "      <th>ageism</th>\n",
       "      <th>db_Apache_Hive</th>\n",
       "      <th>db_CouchBase</th>\n",
       "      <th>db_CouchDB</th>\n",
       "      <th>db_DB2</th>\n",
       "      <th>db_DynamoDB</th>\n",
       "      <th>db_Elasticsearch</th>\n",
       "      <th>db_FileMaker</th>\n",
       "      <th>db_Firebase</th>\n",
       "      <th>db_Firebird</th>\n",
       "      <th>db_Hbase</th>\n",
       "      <th>db_Informix</th>\n",
       "      <th>db_Ingres</th>\n",
       "      <th>db_MariaDB</th>\n",
       "      <th>db_Memcached</th>\n",
       "      <th>db_MongoDB</th>\n",
       "      <th>db_MySQL</th>\n",
       "      <th>db_Neo4j</th>\n",
       "      <th>db_Netezza</th>\n",
       "      <th>db_Oracle</th>\n",
       "      <th>db_PostgreSQL</th>\n",
       "      <th>db_Redis</th>\n",
       "      <th>db_Riak</th>\n",
       "      <th>db_SAP_HANA</th>\n",
       "      <th>db_SQL_Server</th>\n",
       "      <th>db_SQLite</th>\n",
       "      <th>db_Solr</th>\n",
       "      <th>db_Splunk</th>\n",
       "      <th>db_Sybase</th>\n",
       "      <th>db_Teradata</th>\n",
       "      <th>db_dBase</th>\n",
       "      <th>edu</th>\n",
       "      <th>english</th>\n",
       "      <th>experience</th>\n",
       "      <th>expert_adas</th>\n",
       "      <th>expert_blockchain</th>\n",
       "      <th>expert_embed</th>\n",
       "      <th>expert_expert</th>\n",
       "      <th>expert_gis</th>\n",
       "      <th>_996_yes</th>\n",
       "      <th>_996_no</th>\n",
       "      <th>industry</th>\n",
       "      <th>japanese</th>\n",
       "      <th>job_description</th>\n",
       "      <th>job_summary</th>\n",
       "      <th>job_tags</th>\n",
       "      <th>phone_android</th>\n",
       "      <th>phone_app</th>\n",
       "      <th>phone_iso</th>\n",
       "      <th>pl_c_sharp</th>\n",
       "      <th>pl_cpp</th>\n",
       "      <th>pl_delphi</th>\n",
       "      <th>pl_go</th>\n",
       "      <th>pl_haskell</th>\n",
       "      <th>pl_java</th>\n",
       "      <th>pl_javascript</th>\n",
       "      <th>pl_julia</th>\n",
       "      <th>pl_kotlin</th>\n",
       "      <th>pl_lua</th>\n",
       "      <th>pl_matlab</th>\n",
       "      <th>pl_objective_c</th>\n",
       "      <th>pl_perl</th>\n",
       "      <th>pl_php</th>\n",
       "      <th>pl_python</th>\n",
       "      <th>pl_ruby</th>\n",
       "      <th>pl_rust</th>\n",
       "      <th>pl_scrala</th>\n",
       "      <th>pl_swift</th>\n",
       "      <th>pl_typescript</th>\n",
       "      <th>pl_vba</th>\n",
       "      <th>pl_visual_basic</th>\n",
       "      <th>publish_date</th>\n",
       "      <th>published_on_weekend</th>\n",
       "      <th>tag_baby_care</th>\n",
       "      <th>tag_five_insurance</th>\n",
       "      <th>tag_flexible</th>\n",
       "      <th>tag_no_overtime</th>\n",
       "      <th>tag_rest_one_day</th>\n",
       "      <th>tag_rest_two_days</th>\n",
       "      <th>tag_stock</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>40467</td>\n",
       "      <td>75596794</td>\n",
       "      <td>7500</td>\n",
       "      <td>200</td>\n",
       "      <td>JAVA 工程师</td>\n",
       "      <td>软件工程师</td>\n",
       "      <td>一般程序员</td>\n",
       "      <td>None</td>\n",
       "      <td>广东</td>\n",
       "      <td>深圳</td>\n",
       "      <td>四方精创资讯有限公司（简称四方精创），是从事金融行业it综合服务和软件协同服务的高端应用软件...</td>\n",
       "      <td>500-1000</td>\n",
       "      <td>深圳四方精创资讯股份有限公司</td>\n",
       "      <td>合资</td>\n",
       "      <td>【深圳JAVA 工程师_JAVA 工程师招聘_深圳四方精创资讯股份有限公司】-前程无忧官方招聘网站</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>本科</td>\n",
       "      <td>False</td>\n",
       "      <td>1_3</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>computer</td>\n",
       "      <td>False</td>\n",
       "      <td>岗位职责1.按照上级计划和安排进行技术开发工作；2. 负责金融行业应用平台后端模块开发工作；...</td>\n",
       "      <td>深圳|1年经验|本科|招200人|05-23发布</td>\n",
       "      <td>五险一金,专业培训,年终奖金,员工旅游</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>2019-05-23</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>19757</td>\n",
       "      <td>110969579</td>\n",
       "      <td>12500</td>\n",
       "      <td>200</td>\n",
       "      <td>JAVA开发工程师（2019届应届毕业生）</td>\n",
       "      <td>软件工程师</td>\n",
       "      <td>一般程序员</td>\n",
       "      <td>None</td>\n",
       "      <td>广东</td>\n",
       "      <td>广州</td>\n",
       "      <td>广州汇智通信技术有限公司是专业从事国家特殊通信系统研制工作的大型国有控股混合所有制企业。公司...</td>\n",
       "      <td>1000-5000</td>\n",
       "      <td>广州汇智通信技术有限公司</td>\n",
       "      <td>国企</td>\n",
       "      <td>【广州JAVA开发工程师（2019届应届毕业生）_JAVA开发工程师（2019届应届毕业生）...</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>本科</td>\n",
       "      <td>False</td>\n",
       "      <td>no</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>computer</td>\n",
       "      <td>False</td>\n",
       "      <td>广州汇智通信技术有限公司                                  ...</td>\n",
       "      <td>广州|无工作经验|本科|招200人|05-27发布</td>\n",
       "      <td>五险一金,补充医疗保险,补充公积金,交通补贴,年终奖金,绩效奖金,通讯补贴,定期体检,餐饮补贴</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>True</td>\n",
       "      <td>True</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>2019-05-27</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>12137</td>\n",
       "      <td>108834444</td>\n",
       "      <td>15000</td>\n",
       "      <td>150</td>\n",
       "      <td>Java开发工程师</td>\n",
       "      <td>软件工程师</td>\n",
       "      <td>一般程序员</td>\n",
       "      <td>None</td>\n",
       "      <td>北京</td>\n",
       "      <td>北京</td>\n",
       "      <td>大连华信计算机技术股份有限公司（简称大连华信）是一家面向全球客户提供领先的应用软件产品、信息...</td>\n",
       "      <td>5000-10000</td>\n",
       "      <td>大连华信计算机技术股份有限公司</td>\n",
       "      <td>合资</td>\n",
       "      <td>【北京-朝阳区Java开发工程师_Java开发工程师招聘_大连华信计算机技术股份有限公司】-...</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>本科</td>\n",
       "      <td>False</td>\n",
       "      <td>5_10</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>computer</td>\n",
       "      <td>False</td>\n",
       "      <td>1、5年以上java开发工作经验。2、有丰富研发经验；深入理解SpringCloud、spr...</td>\n",
       "      <td>北京-朝阳区|5-7年经验|本科|招150人|05-30发布</td>\n",
       "      <td>五险一金,补充医疗保险,定期体检,年终奖金</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>2019-05-30</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>24768</td>\n",
       "      <td>112071980</td>\n",
       "      <td>12500</td>\n",
       "      <td>150</td>\n",
       "      <td>Java研发工程师（WEB）-广州</td>\n",
       "      <td>高级软件工程师</td>\n",
       "      <td>一般程序员</td>\n",
       "      <td>None</td>\n",
       "      <td>广东</td>\n",
       "      <td>广州</td>\n",
       "      <td>美亚柏科公司简介厦门市美亚柏科信息股份有限公司（股票简称：美亚柏科，股票代码：300188）...</td>\n",
       "      <td>1000-5000</td>\n",
       "      <td>厦门市美亚柏科信息股份有限公司</td>\n",
       "      <td>民营公司</td>\n",
       "      <td>【广州-海珠区Java研发工程师（WEB）-广州_Java研发工程师（WEB）-广州招聘_厦...</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>本科</td>\n",
       "      <td>False</td>\n",
       "      <td>3_5</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>computer</td>\n",
       "      <td>False</td>\n",
       "      <td>工作职责:1)\\t基于海量数据的WEB应用研发。2)\\t数据可视化设计与实现。3)\\t根据业...</td>\n",
       "      <td>广州-海珠区|3-4年经验|本科|招150人|04-26发布</td>\n",
       "      <td>五险一金,免费班车,员工旅游,交通补贴,餐饮补贴,年终奖金,弹性工作,股票期权</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>2019-04-26</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>10097</td>\n",
       "      <td>107969622</td>\n",
       "      <td>23000</td>\n",
       "      <td>100</td>\n",
       "      <td>研发工程师 - 抖音/火山/Faceu/轻颜\\t\\t\\t\\t(职位编号：27935)</td>\n",
       "      <td>互联网软件开发工程师</td>\n",
       "      <td>一般程序员</td>\n",
       "      <td>None</td>\n",
       "      <td>北京</td>\n",
       "      <td>北京</td>\n",
       "      <td>字节跳动，是全球第一家将人工智能应用到主产品的科技公司。短短6年，我们从最初的一个“今日头条...</td>\n",
       "      <td>10000+</td>\n",
       "      <td>字节跳动</td>\n",
       "      <td>民营公司</td>\n",
       "      <td>【北京研发工程师 - 抖音/火山/Faceu/轻颜_研发工程师 - 抖音/火山/Faceu/...</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>本科</td>\n",
       "      <td>False</td>\n",
       "      <td>no</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>computer</td>\n",
       "      <td>False</td>\n",
       "      <td>职位描述:1、参与互娱核心产品的开发、迭代；2、参与各专项技术调研，新技术引入等前瞻项目；3...</td>\n",
       "      <td>北京|无工作经验|本科|招100人|05-30发布</td>\n",
       "      <td>六险一金,弹性工作,免费三餐,餐补,租房补贴,带薪休假,休闲下午茶,扁平管理,过亿用户,职业大牛</td>\n",
       "      <td>True</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>2019-05-30</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          job_id  monthly_salary  headcount  \\\n",
       "40467   75596794            7500        200   \n",
       "19757  110969579           12500        200   \n",
       "12137  108834444           15000        150   \n",
       "24768  112071980           12500        150   \n",
       "10097  107969622           23000        100   \n",
       "\n",
       "                                            title zhinengleibie career  \\\n",
       "40467                                    JAVA 工程师         软件工程师  一般程序员   \n",
       "19757                       JAVA开发工程师（2019届应届毕业生）         软件工程师  一般程序员   \n",
       "12137                                   Java开发工程师         软件工程师  一般程序员   \n",
       "24768                           Java研发工程师（WEB）-广州       高级软件工程师  一般程序员   \n",
       "10097  研发工程师 - 抖音/火山/Faceu/轻颜\\t\\t\\t\\t(职位编号：27935)    互联网软件开发工程师  一般程序员   \n",
       "\n",
       "      real_province province city  \\\n",
       "40467          None       广东   深圳   \n",
       "19757          None       广东   广州   \n",
       "12137          None       北京   北京   \n",
       "24768          None       广东   广州   \n",
       "10097          None       北京   北京   \n",
       "\n",
       "                                     company_description company_size  \\\n",
       "40467  四方精创资讯有限公司（简称四方精创），是从事金融行业it综合服务和软件协同服务的高端应用软件...     500-1000   \n",
       "19757  广州汇智通信技术有限公司是专业从事国家特殊通信系统研制工作的大型国有控股混合所有制企业。公司...    1000-5000   \n",
       "12137  大连华信计算机技术股份有限公司（简称大连华信）是一家面向全球客户提供领先的应用软件产品、信息...   5000-10000   \n",
       "24768  美亚柏科公司简介厦门市美亚柏科信息股份有限公司（股票简称：美亚柏科，股票代码：300188）...    1000-5000   \n",
       "10097  字节跳动，是全球第一家将人工智能应用到主产品的科技公司。短短6年，我们从最初的一个“今日头条...       10000+   \n",
       "\n",
       "         company_title company_type  \\\n",
       "40467   深圳四方精创资讯股份有限公司           合资   \n",
       "19757     广州汇智通信技术有限公司           国企   \n",
       "12137  大连华信计算机技术股份有限公司           合资   \n",
       "24768  厦门市美亚柏科信息股份有限公司         民营公司   \n",
       "10097             字节跳动         民营公司   \n",
       "\n",
       "                                              page_title  ageism  \\\n",
       "40467  【深圳JAVA 工程师_JAVA 工程师招聘_深圳四方精创资讯股份有限公司】-前程无忧官方招聘网站   False   \n",
       "19757  【广州JAVA开发工程师（2019届应届毕业生）_JAVA开发工程师（2019届应届毕业生）...   False   \n",
       "12137  【北京-朝阳区Java开发工程师_Java开发工程师招聘_大连华信计算机技术股份有限公司】-...   False   \n",
       "24768  【广州-海珠区Java研发工程师（WEB）-广州_Java研发工程师（WEB）-广州招聘_厦...   False   \n",
       "10097  【北京研发工程师 - 抖音/火山/Faceu/轻颜_研发工程师 - 抖音/火山/Faceu/...   False   \n",
       "\n",
       "       db_Apache_Hive  db_CouchBase  db_CouchDB  db_DB2  db_DynamoDB  \\\n",
       "40467           False         False       False   False        False   \n",
       "19757           False         False       False   False        False   \n",
       "12137           False         False       False   False        False   \n",
       "24768           False         False       False   False        False   \n",
       "10097           False         False       False   False        False   \n",
       "\n",
       "       db_Elasticsearch  db_FileMaker  db_Firebase  db_Firebird  db_Hbase  \\\n",
       "40467             False         False        False        False     False   \n",
       "19757             False         False        False        False     False   \n",
       "12137             False         False        False        False     False   \n",
       "24768             False         False        False        False     False   \n",
       "10097             False         False        False        False     False   \n",
       "\n",
       "       db_Informix  db_Ingres  db_MariaDB  db_Memcached  db_MongoDB  db_MySQL  \\\n",
       "40467        False      False       False         False       False      True   \n",
       "19757        False      False       False         False       False     False   \n",
       "12137        False      False       False         False       False      True   \n",
       "24768        False      False       False         False       False     False   \n",
       "10097        False      False       False         False       False     False   \n",
       "\n",
       "       db_Neo4j  db_Netezza  db_Oracle  db_PostgreSQL  db_Redis  db_Riak  \\\n",
       "40467     False       False       True          False     False    False   \n",
       "19757     False       False      False          False     False    False   \n",
       "12137     False       False       True          False     False    False   \n",
       "24768     False       False      False          False     False    False   \n",
       "10097     False       False      False          False     False    False   \n",
       "\n",
       "       db_SAP_HANA  db_SQL_Server  db_SQLite  db_Solr  db_Splunk  db_Sybase  \\\n",
       "40467        False          False      False    False      False      False   \n",
       "19757        False          False      False    False      False      False   \n",
       "12137        False          False      False    False      False      False   \n",
       "24768        False          False      False    False      False      False   \n",
       "10097        False          False      False    False      False      False   \n",
       "\n",
       "       db_Teradata  db_dBase edu  english experience  expert_adas  \\\n",
       "40467        False     False  本科    False        1_3        False   \n",
       "19757        False     False  本科    False         no        False   \n",
       "12137        False     False  本科    False       5_10        False   \n",
       "24768        False     False  本科    False        3_5        False   \n",
       "10097        False     False  本科    False         no        False   \n",
       "\n",
       "       expert_blockchain  expert_embed  expert_expert  expert_gis  _996_yes  \\\n",
       "40467              False         False          False       False     False   \n",
       "19757              False         False          False       False     False   \n",
       "12137              False         False          False       False     False   \n",
       "24768              False         False          False       False     False   \n",
       "10097              False         False          False       False      True   \n",
       "\n",
       "       _996_no  industry  japanese  \\\n",
       "40467    False  computer     False   \n",
       "19757    False  computer     False   \n",
       "12137    False  computer     False   \n",
       "24768    False  computer     False   \n",
       "10097    False  computer     False   \n",
       "\n",
       "                                         job_description  \\\n",
       "40467  岗位职责1.按照上级计划和安排进行技术开发工作；2. 负责金融行业应用平台后端模块开发工作；...   \n",
       "19757  广州汇智通信技术有限公司                                  ...   \n",
       "12137  1、5年以上java开发工作经验。2、有丰富研发经验；深入理解SpringCloud、spr...   \n",
       "24768  工作职责:1)\\t基于海量数据的WEB应用研发。2)\\t数据可视化设计与实现。3)\\t根据业...   \n",
       "10097  职位描述:1、参与互娱核心产品的开发、迭代；2、参与各专项技术调研，新技术引入等前瞻项目；3...   \n",
       "\n",
       "                          job_summary  \\\n",
       "40467        深圳|1年经验|本科|招200人|05-23发布   \n",
       "19757       广州|无工作经验|本科|招200人|05-27发布   \n",
       "12137  北京-朝阳区|5-7年经验|本科|招150人|05-30发布   \n",
       "24768  广州-海珠区|3-4年经验|本科|招150人|04-26发布   \n",
       "10097       北京|无工作经验|本科|招100人|05-30发布   \n",
       "\n",
       "                                               job_tags  phone_android  \\\n",
       "40467                               五险一金,专业培训,年终奖金,员工旅游          False   \n",
       "19757   五险一金,补充医疗保险,补充公积金,交通补贴,年终奖金,绩效奖金,通讯补贴,定期体检,餐饮补贴          False   \n",
       "12137                             五险一金,补充医疗保险,定期体检,年终奖金          False   \n",
       "24768           五险一金,免费班车,员工旅游,交通补贴,餐饮补贴,年终奖金,弹性工作,股票期权          False   \n",
       "10097  六险一金,弹性工作,免费三餐,餐补,租房补贴,带薪休假,休闲下午茶,扁平管理,过亿用户,职业大牛           True   \n",
       "\n",
       "       phone_app  phone_iso  pl_c_sharp  pl_cpp  pl_delphi  pl_go  pl_haskell  \\\n",
       "40467      False      False       False   False      False  False       False   \n",
       "19757       True       True        True    True      False  False       False   \n",
       "12137      False      False       False   False      False   True       False   \n",
       "24768      False      False       False   False      False  False       False   \n",
       "10097       True      False       False   False      False  False       False   \n",
       "\n",
       "       pl_java  pl_javascript  pl_julia  pl_kotlin  pl_lua  pl_matlab  \\\n",
       "40467     True          False     False      False   False      False   \n",
       "19757     True          False     False      False   False      False   \n",
       "12137     True          False     False      False   False      False   \n",
       "24768     True           True     False      False   False      False   \n",
       "10097    False          False     False      False   False      False   \n",
       "\n",
       "       pl_objective_c  pl_perl  pl_php  pl_python  pl_ruby  pl_rust  \\\n",
       "40467           False    False   False      False    False    False   \n",
       "19757           False    False   False      False    False    False   \n",
       "12137           False    False   False       True    False    False   \n",
       "24768           False    False   False      False    False    False   \n",
       "10097           False    False   False      False    False    False   \n",
       "\n",
       "       pl_scrala  pl_swift  pl_typescript  pl_vba  pl_visual_basic  \\\n",
       "40467      False     False          False   False            False   \n",
       "19757      False     False          False   False            False   \n",
       "12137      False     False          False   False            False   \n",
       "24768      False     False          False   False            False   \n",
       "10097      False     False          False   False            False   \n",
       "\n",
       "      publish_date  published_on_weekend  tag_baby_care  tag_five_insurance  \\\n",
       "40467   2019-05-23                 False          False                True   \n",
       "19757   2019-05-27                 False          False                True   \n",
       "12137   2019-05-30                 False          False                True   \n",
       "24768   2019-04-26                 False          False                True   \n",
       "10097   2019-05-30                 False          False               False   \n",
       "\n",
       "       tag_flexible  tag_no_overtime  tag_rest_one_day  tag_rest_two_days  \\\n",
       "40467         False            False             False              False   \n",
       "19757         False            False             False              False   \n",
       "12137         False            False             False              False   \n",
       "24768          True            False             False              False   \n",
       "10097          True            False             False              False   \n",
       "\n",
       "       tag_stock  \n",
       "40467      False  \n",
       "19757      False  \n",
       "12137      False  \n",
       "24768       True  \n",
       "10097      False  "
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.options.display.max_columns=100\n",
    "data.sort_values(by='headcount', ascending=False).head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "150520"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.headcount.sum()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 城市"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "headcount_by_cities = data.groupby(by='city').headcount.sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "city\n",
       "上海    51135\n",
       "北京    27995\n",
       "广州    31832\n",
       "深圳    39558\n",
       "Name: headcount, dtype: int64"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "headcount_by_cities\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(10,8))\n",
    "plt.pie(headcount_by_cities.values, labels=headcount_by_cities.index, autopct='%1.1f%%')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >city</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow0_col0\" class=\"data row0 col0\" >北京</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow0_col1\" class=\"data row0 col1\" >17327</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow0_col2\" class=\"data row0 col2\" >4500</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow0_col3\" class=\"data row0 col3\" >15000</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow0_col4\" class=\"data row0 col4\" >45000</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow0_col5\" class=\"data row0 col5\" >27995</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow0_col6\" class=\"data row0 col6\" >18.60%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow1_col0\" class=\"data row1 col0\" >上海</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow1_col1\" class=\"data row1 col1\" >16163</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow1_col2\" class=\"data row1 col2\" >5250</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow1_col3\" class=\"data row1 col3\" >14583</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow1_col4\" class=\"data row1 col4\" >37500</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow1_col5\" class=\"data row1 col5\" >51135</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow1_col6\" class=\"data row1 col6\" >33.97%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow2_col0\" class=\"data row2 col0\" >深圳</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow2_col1\" class=\"data row2 col1\" >15969</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow2_col2\" class=\"data row2 col2\" >5250</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow2_col3\" class=\"data row2 col3\" >14500</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow2_col4\" class=\"data row2 col4\" >37500</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow2_col5\" class=\"data row2 col5\" >39558</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow2_col6\" class=\"data row2 col6\" >26.28%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow3_col0\" class=\"data row3 col0\" >广州</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow3_col1\" class=\"data row3 col1\" >13052</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow3_col2\" class=\"data row3 col2\" >3750</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow3_col3\" class=\"data row3 col3\" >12500</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow3_col4\" class=\"data row3 col4\" >30000</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow3_col5\" class=\"data row3 col5\" >31832</td>\n",
       "                        <td id=\"T_cab7c454_2f5d_11ea_a3a7_701ce71031efrow3_col6\" class=\"data row3 col6\" >21.15%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1e48656e348>"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_pl=get_sub_stats_by_col(data,'city')\n",
    "apply_style(data_pl)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [],
   "source": [
    "salary_beijing=data[data.city=='北京'].monthly_salary\n",
    "salary_shanghai=data[data.city=='上海'].monthly_salary\n",
    "salary_guangzhou=data[data.city=='广州'].monthly_salary\n",
    "salary_shenzhen=data[data.city=='深圳'].monthly_salary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "F_onewayResult(statistic=50.84526200888846, pvalue=1.0275957592210318e-12)"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.f_oneway(salary_beijing, salary_shanghai)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "F_onewayResult(statistic=97.47689113559011, pvalue=5.913839956892184e-23)"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.f_oneway(salary_shanghai, salary_shenzhen)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "F_onewayResult(statistic=753.081327355426, pvalue=2.8787315861164444e-163)"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.f_oneway(salary_shenzhen, salary_guangzhou)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 编程语言"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >rank</th>        <th class=\"col_heading level0 col1\" >pl_</th>        <th class=\"col_heading level0 col2\" >salary_mean</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_min</th>        <th class=\"col_heading level0 col5\" >salary_95_max</th>        <th class=\"col_heading level0 col6\" >head_count</th>        <th class=\"col_heading level0 col7\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow0_col0\" class=\"data row0 col0\" >1</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow0_col1\" class=\"data row0 col1\" >julia</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow0_col2\" class=\"data row0 col2\" >27500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow0_col3\" class=\"data row0 col3\" >27500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow0_col4\" class=\"data row0 col4\" >17500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow0_col5\" class=\"data row0 col5\" >37500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow0_col6\" class=\"data row0 col6\" >2</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow0_col7\" class=\"data row0 col7\" >0.00%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow1_col0\" class=\"data row1 col0\" >2</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow1_col1\" class=\"data row1 col1\" >rust</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow1_col2\" class=\"data row1 col2\" >25854</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow1_col3\" class=\"data row1 col3\" >20000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow1_col4\" class=\"data row1 col4\" >8633</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow1_col5\" class=\"data row1 col5\" >62125</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow1_col6\" class=\"data row1 col6\" >169</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow1_col7\" class=\"data row1 col7\" >0.08%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow2_col0\" class=\"data row2 col0\" >3</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow2_col1\" class=\"data row2 col1\" >haskell</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow2_col2\" class=\"data row2 col2\" >24255</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow2_col3\" class=\"data row2 col3\" >20278</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow2_col4\" class=\"data row2 col4\" >7875</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow2_col5\" class=\"data row2 col5\" >45000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow2_col6\" class=\"data row2 col6\" >47</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow2_col7\" class=\"data row2 col7\" >0.02%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow3_col0\" class=\"data row3 col0\" >4</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow3_col1\" class=\"data row3 col1\" >python</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow3_col2\" class=\"data row3 col2\" >20645</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow3_col3\" class=\"data row3 col3\" >18000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow3_col4\" class=\"data row3 col4\" >4500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow3_col5\" class=\"data row3 col5\" >45000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow3_col6\" class=\"data row3 col6\" >17887</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow3_col7\" class=\"data row3 col7\" >8.51%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow4_col0\" class=\"data row4 col0\" >5</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow4_col1\" class=\"data row4 col1\" >matlab</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow4_col2\" class=\"data row4 col2\" >20089</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow4_col3\" class=\"data row4 col3\" >18500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow4_col4\" class=\"data row4 col4\" >5565</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow4_col5\" class=\"data row4 col5\" >40000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow4_col6\" class=\"data row4 col6\" >3002</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow4_col7\" class=\"data row4 col7\" >1.43%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow5_col0\" class=\"data row5 col0\" >6</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow5_col1\" class=\"data row5 col1\" >go</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow5_col2\" class=\"data row5 col2\" >19893</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow5_col3\" class=\"data row5 col3\" >17500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow5_col4\" class=\"data row5 col4\" >6000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow5_col5\" class=\"data row5 col5\" >45000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow5_col6\" class=\"data row5 col6\" >18060</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow5_col7\" class=\"data row5 col7\" >8.60%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow6_col0\" class=\"data row6 col0\" >7</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow6_col1\" class=\"data row6 col1\" >lua</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow6_col2\" class=\"data row6 col2\" >18814</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow6_col3\" class=\"data row6 col3\" >17500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow6_col4\" class=\"data row6 col4\" >5131</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow6_col5\" class=\"data row6 col5\" >40000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow6_col6\" class=\"data row6 col6\" >1944</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow6_col7\" class=\"data row6 col7\" >0.93%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow7_col0\" class=\"data row7 col0\" >8</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow7_col1\" class=\"data row7 col1\" >perl</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow7_col2\" class=\"data row7 col2\" >18664</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow7_col3\" class=\"data row7 col3\" >15500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow7_col4\" class=\"data row7 col4\" >4268</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow7_col5\" class=\"data row7 col5\" >45726</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow7_col6\" class=\"data row7 col6\" >1678</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow7_col7\" class=\"data row7 col7\" >0.80%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow8_col0\" class=\"data row8 col0\" >9</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow8_col1\" class=\"data row8 col1\" >kotlin</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow8_col2\" class=\"data row8 col2\" >18003</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow8_col3\" class=\"data row8 col3\" >15571</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow8_col4\" class=\"data row8 col4\" >7000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow8_col5\" class=\"data row8 col5\" >47781</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow8_col6\" class=\"data row8 col6\" >491</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow8_col7\" class=\"data row8 col7\" >0.23%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow9_col0\" class=\"data row9 col0\" >10</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow9_col1\" class=\"data row9 col1\" >cpp</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow9_col2\" class=\"data row9 col2\" >17842</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow9_col3\" class=\"data row9 col3\" >15000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow9_col4\" class=\"data row9 col4\" >5000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow9_col5\" class=\"data row9 col5\" >40000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow9_col6\" class=\"data row9 col6\" >34456</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow9_col7\" class=\"data row9 col7\" >16.40%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow10_col0\" class=\"data row10 col0\" >11</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow10_col1\" class=\"data row10 col1\" >ruby</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow10_col2\" class=\"data row10 col2\" >17278</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow10_col3\" class=\"data row10 col3\" >16517</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow10_col4\" class=\"data row10 col4\" >4857</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow10_col5\" class=\"data row10 col5\" >35000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow10_col6\" class=\"data row10 col6\" >640</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow10_col7\" class=\"data row10 col7\" >0.30%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow11_col0\" class=\"data row11 col0\" >12</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow11_col1\" class=\"data row11 col1\" >swift</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow11_col2\" class=\"data row11 col2\" >16210</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow11_col3\" class=\"data row11 col3\" >15000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow11_col4\" class=\"data row11 col4\" >5250</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow11_col5\" class=\"data row11 col5\" >37500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow11_col6\" class=\"data row11 col6\" >2078</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow11_col7\" class=\"data row11 col7\" >0.99%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow12_col0\" class=\"data row12 col0\" >13</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow12_col1\" class=\"data row12 col1\" >java</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow12_col2\" class=\"data row12 col2\" >15704</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow12_col3\" class=\"data row12 col3\" >14000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow12_col4\" class=\"data row12 col4\" >4750</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow12_col5\" class=\"data row12 col5\" >37500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow12_col6\" class=\"data row12 col6\" >67787</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow12_col7\" class=\"data row12 col7\" >32.27%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow13_col0\" class=\"data row13 col0\" >14</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow13_col1\" class=\"data row13 col1\" >typescript</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow13_col2\" class=\"data row13 col2\" >15492</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow13_col3\" class=\"data row13 col3\" >15000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow13_col4\" class=\"data row13 col4\" >6500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow13_col5\" class=\"data row13 col5\" >32500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow13_col6\" class=\"data row13 col6\" >741</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow13_col7\" class=\"data row13 col7\" >0.35%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow14_col0\" class=\"data row14 col0\" >15</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow14_col1\" class=\"data row14 col1\" >php</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow14_col2\" class=\"data row14 col2\" >15058</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow14_col3\" class=\"data row14 col3\" >12500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow14_col4\" class=\"data row14 col4\" >4000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow14_col5\" class=\"data row14 col5\" >37500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow14_col6\" class=\"data row14 col6\" >10817</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow14_col7\" class=\"data row14 col7\" >5.15%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow15_col0\" class=\"data row15 col0\" >16</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow15_col1\" class=\"data row15 col1\" >objective_c</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow15_col2\" class=\"data row15 col2\" >14772</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow15_col3\" class=\"data row15 col3\" >12500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow15_col4\" class=\"data row15 col4\" >7000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow15_col5\" class=\"data row15 col5\" >27179</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow15_col6\" class=\"data row15 col6\" >298</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow15_col7\" class=\"data row15 col7\" >0.14%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow16_col0\" class=\"data row16 col0\" >17</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow16_col1\" class=\"data row16 col1\" >visual_basic</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow16_col2\" class=\"data row16 col2\" >14540</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow16_col3\" class=\"data row16 col3\" >12500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow16_col4\" class=\"data row16 col4\" >6494</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow16_col5\" class=\"data row16 col5\" >30000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow16_col6\" class=\"data row16 col6\" >33</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow16_col7\" class=\"data row16 col7\" >0.02%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow17_col0\" class=\"data row17 col0\" >18</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow17_col1\" class=\"data row17 col1\" >javascript</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow17_col2\" class=\"data row17 col2\" >13378</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow17_col3\" class=\"data row17 col3\" >12500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow17_col4\" class=\"data row17 col4\" >5000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow17_col5\" class=\"data row17 col5\" >27500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow17_col6\" class=\"data row17 col6\" >26489</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow17_col7\" class=\"data row17 col7\" >12.61%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow18_col0\" class=\"data row18 col0\" >19</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow18_col1\" class=\"data row18 col1\" >c_sharp</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow18_col2\" class=\"data row18 col2\" >12834</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow18_col3\" class=\"data row18 col3\" >12500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow18_col4\" class=\"data row18 col4\" >4508</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow18_col5\" class=\"data row18 col5\" >27500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow18_col6\" class=\"data row18 col6\" >22751</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow18_col7\" class=\"data row18 col7\" >10.83%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow19_col0\" class=\"data row19 col0\" >20</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow19_col1\" class=\"data row19 col1\" >delphi</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow19_col2\" class=\"data row19 col2\" >12526</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow19_col3\" class=\"data row19 col3\" >12500</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow19_col4\" class=\"data row19 col4\" >4917</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow19_col5\" class=\"data row19 col5\" >25000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow19_col6\" class=\"data row19 col6\" >490</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow19_col7\" class=\"data row19 col7\" >0.23%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow20_col0\" class=\"data row20 col0\" >21</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow20_col1\" class=\"data row20 col1\" >vba</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow20_col2\" class=\"data row20 col2\" >12169</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow20_col3\" class=\"data row20 col3\" >11000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow20_col4\" class=\"data row20 col4\" >5250</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow20_col5\" class=\"data row20 col5\" >25000</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow20_col6\" class=\"data row20 col6\" >210</td>\n",
       "                        <td id=\"T_cad8e0a8_2f5d_11ea_836b_701ce71031efrow20_col7\" class=\"data row20 col7\" >0.10%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1e487d5e808>"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_pl=get_sub_stats_by_prefix(data,'pl_')\n",
    "apply_style(data_pl)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "数据显示，haskell才是最赚钱的编程语言。python是主流语言里面最赚钱的，比java的工资多了3000元！vb是最不赚钱的了。其中，最赚钱的编程语言和最不赚钱的，工资居然差了2倍。所以，要选好编程语言呀！"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 教育"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "edu_counts=data[~(data.edu=='')].groupby(by=['edu']).headcount.sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "edu\n",
       "初中及以下        9\n",
       "博士         224\n",
       "大专       38683\n",
       "本科       82164\n",
       "硕士        4265\n",
       "高中         436\n",
       "Name: headcount, dtype: int64"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "edu_counts"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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SlC8dW4TyX46gbuBvxDswKRTzImgkpUi5Sc8A8wDzsxeXgtUOA1VejYA9xAU69+9lN/uOI9IwVHJSiT4CW8ocAb7SjfhNFA0bQTu33vxUv4qp2lEioBKViLJT3gTCcr2DOAkYLrTQMVJpSoySCpZKQl+whsNnEhQuCcAC4AxTkMVlmbg+ezlWeAhL+WvdBtJpPipZKVkZUe787OXecAcYBLRPpmBBVaxr1CfB573Uv46p6lEIkolK7IfP+GVA1MIppf3XqZlvx5Dcexc1QtsBtYTrKy0HlgLNAKNXspvdRdNpLSoZEX6KLtIxiSCwp1IsEjGgZcx+31fnsOn7wJagD3ZSwuwi2C76foDLpu9lJ/O4XOLyACpZEVC4ie8GoKyrSWYgo5lvx7uewu08soy3eOl/O585xeRwVPJioiIhCTmOoCIiEhUqWRFRERCopIVEREJiUpWREQkJCpZERGRkKhkRUREQqKSFRERCYlKVkREJCQqWRERkZCoZEVEREKikhUREQmJSlZERCQkKlkREZGQqGRFRERCopIVEREJiUpWREQkJCpZERGRkKhkRUREQqKSFRERCYlKVkREJCQqWRERkZCoZEVEREKikhUREQmJSlZERCQkKlkREZGQqGRFRERCopIVEREJiUpWREQkJCpZERGRkKhkRUREQqKSFRERCYlKVkREJCQqWRERkZCoZEVEREKikhUREQmJSlZERCQkKlkREZGQqGRFRERCopIVEREJiUpWREQkJCpZERGRkKhkRUREQqKSFRERCYlKVkREJCQqWRERkZCoZEVEREKikhUREQmJSlZERCQkKlkREZGQ/D/oa9o7KUxvhwAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(10,8))\n",
    "plt.pie(edu_counts.values, labels=edu_counts.index, autopct='%1.1f%%')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >edu</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow0_col0\" class=\"data row0 col0\" >博士</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow0_col1\" class=\"data row0 col1\" >30215</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow0_col2\" class=\"data row0 col2\" >13452</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow0_col3\" class=\"data row0 col3\" >29000</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow0_col4\" class=\"data row0 col4\" >56500</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow0_col5\" class=\"data row0 col5\" >224</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow0_col6\" class=\"data row0 col6\" >0.18%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow1_col0\" class=\"data row1 col0\" >硕士</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow1_col1\" class=\"data row1 col1\" >22025</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow1_col2\" class=\"data row1 col2\" >3842</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow1_col3\" class=\"data row1 col3\" >20000</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow1_col4\" class=\"data row1 col4\" >45521</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow1_col5\" class=\"data row1 col5\" >4265</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow1_col6\" class=\"data row1 col6\" >3.39%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow2_col0\" class=\"data row2 col0\" >本科</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow2_col1\" class=\"data row2 col1\" >16829</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow2_col2\" class=\"data row2 col2\" >5250</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow2_col3\" class=\"data row2 col3\" >15000</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow2_col4\" class=\"data row2 col4\" >37500</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow2_col5\" class=\"data row2 col5\" >82164</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow2_col6\" class=\"data row2 col6\" >65.32%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow3_col0\" class=\"data row3 col0\" >初中及以下</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow3_col1\" class=\"data row3 col1\" >16111</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow3_col2\" class=\"data row3 col2\" >10000</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow3_col3\" class=\"data row3 col3\" >12500</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow3_col4\" class=\"data row3 col4\" >30000</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow3_col5\" class=\"data row3 col5\" >9</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow3_col6\" class=\"data row3 col6\" >0.01%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow4_col0\" class=\"data row4 col0\" >大专</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow4_col1\" class=\"data row4 col1\" >12663</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow4_col2\" class=\"data row4 col2\" >4000</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow4_col3\" class=\"data row4 col3\" >12500</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow4_col4\" class=\"data row4 col4\" >27500</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow4_col5\" class=\"data row4 col5\" >38683</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow4_col6\" class=\"data row4 col6\" >30.75%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow5_col0\" class=\"data row5 col0\" >高中</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow5_col1\" class=\"data row5 col1\" >8815</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow5_col2\" class=\"data row5 col2\" >3540</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow5_col3\" class=\"data row5 col3\" >7000</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow5_col4\" class=\"data row5 col4\" >24333</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow5_col5\" class=\"data row5 col5\" >436</td>\n",
       "                        <td id=\"T_cb049fe2_2f5d_11ea_8b77_701ce71031efrow5_col6\" class=\"data row5 col6\" >0.35%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1e486a5d548>"
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_edu=get_sub_stats_by_col(data[data.edu.isin(['初中及以下','高中','大专','本科','硕士','博士'])], 'edu')\n",
    "apply_style(data_edu)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "salary_associate=data[data.edu=='大专'].monthly_salary\n",
    "salary_bachelor=data[data.edu=='本科'].monthly_salary\n",
    "salary_master=data[data.edu=='硕士'].monthly_salary\n",
    "salary_phd=data[data.edu=='博士'].monthly_salary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "大专，本科，硕士，博士的平均工资分别是12886，17124，22339，31055。中位数分别是12500， 15000，20000， 29166。\n"
     ]
    }
   ],
   "source": [
    "print('大专，本科，硕士，博士的平均工资分别是{:.0f}，{:.0f}，{:.0f}，{:.0f}。中位数分别是{:.0f}， {:.0f}，{:.0f}， {:.0f}。'.format(\n",
    "    salary_associate.mean(),salary_bachelor.mean(),salary_master.mean(),salary_phd.mean(),\n",
    "    salary_associate.median(),salary_bachelor.median(),salary_master.median(),salary_phd.median()))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "F_onewayResult(statistic=50.58838736859085, pvalue=1.7170968416536228e-12)"
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.f_oneway(salary_phd, salary_master)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "F_onewayResult(statistic=538.6931956652704, pvalue=4.615420197073877e-118)"
      ]
     },
     "execution_count": 40,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.f_oneway(salary_master, salary_bachelor)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "F_onewayResult(statistic=2675.1407626078626, pvalue=0.0)"
      ]
     },
     "execution_count": 41,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.f_oneway(salary_bachelor, salary_associate)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "经过Oneway Anova Test，证明从大专到博士，学历每提高一级，工资都有显著的提高。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "order=['大专','本科','硕士','博士']\n",
    "a=sns.boxplot(y='edu',x='monthly_salary',order=order,data=data[data.edu.isin(order)], orient='h')\n",
    "plt.annotate('https://github.com/juwikuang/job_survey', xy=(0.5,1.5), xytext=(2, 1.55))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 工作经验 Working Experience"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_cb43f300_2f5d_11ea_b447_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >experience</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow0_col0\" class=\"data row0 col0\" >10+</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow0_col1\" class=\"data row0 col1\" >31636</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow0_col2\" class=\"data row0 col2\" >12500</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow0_col3\" class=\"data row0 col3\" >30000</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow0_col4\" class=\"data row0 col4\" >60000</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow0_col5\" class=\"data row0 col5\" >428</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow0_col6\" class=\"data row0 col6\" >0.28%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow1_col0\" class=\"data row1 col0\" >5_10</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow1_col1\" class=\"data row1 col1\" >22503</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow1_col2\" class=\"data row1 col2\" >11500</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow1_col3\" class=\"data row1 col3\" >20000</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow1_col4\" class=\"data row1 col4\" >45000</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow1_col5\" class=\"data row1 col5\" >19267</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow1_col6\" class=\"data row1 col6\" >12.80%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow2_col0\" class=\"data row2 col0\" >3_5</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow2_col1\" class=\"data row2 col1\" >17215</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow2_col2\" class=\"data row2 col2\" >8500</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow2_col3\" class=\"data row2 col3\" >15000</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow2_col4\" class=\"data row2 col4\" >37500</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow2_col5\" class=\"data row2 col5\" >45923</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow2_col6\" class=\"data row2 col6\" >30.51%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow3_col0\" class=\"data row3 col0\" >no</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow3_col1\" class=\"data row3 col1\" >13634</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow3_col2\" class=\"data row3 col2\" >3500</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow3_col3\" class=\"data row3 col3\" >12500</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow3_col4\" class=\"data row3 col4\" >35000</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow3_col5\" class=\"data row3 col5\" >41878</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow3_col6\" class=\"data row3 col6\" >27.82%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow4_col0\" class=\"data row4 col0\" >1_3</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow4_col1\" class=\"data row4 col1\" >12785</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow4_col2\" class=\"data row4 col2\" >5250</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow4_col3\" class=\"data row4 col3\" >11500</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow4_col4\" class=\"data row4 col4\" >30000</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow4_col5\" class=\"data row4 col5\" >43024</td>\n",
       "                        <td id=\"T_cb43f300_2f5d_11ea_b447_701ce71031efrow4_col6\" class=\"data row4 col6\" >28.58%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1e48697d208>"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_experience=get_sub_stats_by_col(data, 'experience')\n",
    "apply_style(data_experience)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "salary_we_10=data[data.experience=='10+'].monthly_salary\n",
    "salary_we_5_10=data[data.experience=='5_10'].monthly_salary\n",
    "salary_we_3_5=data[data.experience=='3_5'].monthly_salary\n",
    "salary_we_1_3=data[data.experience=='1_3'].monthly_salary\n",
    "salary_we_no=data[data.experience=='no'].monthly_salary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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reOVV16hrKyMO+64A4BbbrmF448/ngULFvDee+/FnV8/zjrrLFasWMFFF13EypUr6d+/f9y6H3zwARMmTGDp0qWcdNJJcetMmTKF1atXU1tby4cffghEfgbWrFnD1q1b6dmzJ3/+85+pqanhrrvuAmDfvn188cUXdOvWLW4c8+bN47rrruPll19m3759/PGPfwRg1KhRvPLKK2zZsiXuaHPLli3k5ORQVVXFDTfcwP79++P289prr3HJJZewYsUKAK699loqKysBqKqqYuTIkSxatIi+fftSVVXFBx98QHV1NZMmTeJ3v/sdACtWrGDs2LFx+xCBJhKCc26a93+Ic26o9zfEOdcmDzmdNGkSAGeeeSZffPGF79d9+9vfBqBfv37U1taSn5/P5MmT+c53vsMjjzwSd6UE8Nvf/jZi6zlW2Yknnsjhw4cZOHBgo7p+XH/99eTl5cWcr0OHDoUfh37C6d+/P3//+99jtrV161YGDBgQrj9p0iTefvttLrzwQsyMiy++mLfffhuAgoICjjvuOAoKCsjJyYk7v4mE4uvfvz9PPvkko0aN4qmnngov81h+85vf0LNnT3bs2BG3vby8PB5++GEmTJjA3r17w+XRn4EePXqwadMmAoEAP/vZz8LtPPTQQ/zgBz9IGPuWLVvCy3TgwIHh5eJnOffv35++ffsyYsQIVqxYwYknnhhzPgD69u0bMfLs06cPO3fu5NNPP+WUU06hU6dOvPPOOzz77LMUFRXxj3/8g/fff5+zzz6bzz77jHXr1tG3b186duyYcH5E2tVPRp06dYqY7tixIwcPHgSCP9vEK1u/fj0Ab7zxBoWFhbz33nvk5+ezYsUKevTo0WhUEHL48GHee+89evfunbBs/fr1jBs3jtdff53bbrst4TzEii96vo4//vjwz0mhLUmATZs2AcFRQEFBQcz2zznnnHC9V155hYkTJ3LuueeyYcMGnHO89tprfOtb3/I9v7E0jC+0VX3BBRewZs0ahg8fzooVKxKOEMrKynjggQcoKyuL297ixYsZP348S5cujVg+0cvqj3/8I2VlZbz66qvhRLZ7927y8vLo0qVLwvn41re+xWuvvQYQsVz8LOc333yTQYMGsXLlSj7++GNefvnlmPMB0Llz43M+LrroIhYuXMiVV14JwDe+8Q1uvfVW1q1bx9y5c8P7Pa677jpu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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "order=['10+','5_10','3_5','1_3']\n",
    "sns.boxplot(y='experience',x='monthly_salary',order=order,data=data[data.experience.isin(order)], orient='h')\n",
    "plt.annotate('https://github.com/juwikuang/job_survey', xy=(1.5,1.5), xytext=(1.55, 1.55))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 公司 Company"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 公司性质 Company Type"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >company_type</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow0_col0\" class=\"data row0 col0\" >事业单位</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow0_col1\" class=\"data row0 col1\" >21660</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow0_col2\" class=\"data row0 col2\" >3345</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow0_col3\" class=\"data row0 col3\" >17500</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow0_col4\" class=\"data row0 col4\" >60000</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow0_col5\" class=\"data row0 col5\" >1149</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow0_col6\" class=\"data row0 col6\" >0.76%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow1_col0\" class=\"data row1 col0\" >外资（欧美）</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow1_col1\" class=\"data row1 col1\" >18426</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow1_col2\" class=\"data row1 col2\" >6000</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow1_col3\" class=\"data row1 col3\" >17500</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow1_col4\" class=\"data row1 col4\" >42312</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow1_col5\" class=\"data row1 col5\" >7629</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow1_col6\" class=\"data row1 col6\" >5.07%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow2_col0\" class=\"data row2 col0\" >合资</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow2_col1\" class=\"data row2 col1\" >15970</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow2_col2\" class=\"data row2 col2\" >6250</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow2_col3\" class=\"data row2 col3\" >14000</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow2_col4\" class=\"data row2 col4\" >35000</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow2_col5\" class=\"data row2 col5\" >13944</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow2_col6\" class=\"data row2 col6\" >9.26%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow3_col0\" class=\"data row3 col0\" >民营公司</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow3_col1\" class=\"data row3 col1\" >15493</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow3_col2\" class=\"data row3 col2\" >4500</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow3_col3\" class=\"data row3 col3\" >13000</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow3_col4\" class=\"data row3 col4\" >37500</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow3_col5\" class=\"data row3 col5\" >109909</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow3_col6\" class=\"data row3 col6\" >73.02%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow4_col0\" class=\"data row4 col0\" >外资（非欧美）</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow4_col1\" class=\"data row4 col1\" >15376</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow4_col2\" class=\"data row4 col2\" >5250</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow4_col3\" class=\"data row4 col3\" >13000</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow4_col4\" class=\"data row4 col4\" >35000</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow4_col5\" class=\"data row4 col5\" >8138</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow4_col6\" class=\"data row4 col6\" >5.41%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow5_col0\" class=\"data row5 col0\" >国企</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow5_col1\" class=\"data row5 col1\" >14805</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow5_col2\" class=\"data row5 col2\" >3750</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow5_col3\" class=\"data row5 col3\" >12500</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow5_col4\" class=\"data row5 col4\" >32500</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow5_col5\" class=\"data row5 col5\" >9339</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow5_col6\" class=\"data row5 col6\" >6.20%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow6_col0\" class=\"data row6 col0\" >外企代表处</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow6_col1\" class=\"data row6 col1\" >13190</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow6_col2\" class=\"data row6 col2\" >4364</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow6_col3\" class=\"data row6 col3\" >12500</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow6_col4\" class=\"data row6 col4\" >35000</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow6_col5\" class=\"data row6 col5\" >117</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow6_col6\" class=\"data row6 col6\" >0.08%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow7_col0\" class=\"data row7 col0\" >非营利组织</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow7_col1\" class=\"data row7 col1\" >10821</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow7_col2\" class=\"data row7 col2\" >5279</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow7_col3\" class=\"data row7 col3\" >10937</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow7_col4\" class=\"data row7 col4\" >17500</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow7_col5\" class=\"data row7 col5\" >114</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow7_col6\" class=\"data row7 col6\" >0.08%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow8_col0\" class=\"data row8 col0\" >政府机关</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow8_col1\" class=\"data row8 col1\" >8745</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow8_col2\" class=\"data row8 col2\" >5379</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow8_col3\" class=\"data row8 col3\" >7000</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow8_col4\" class=\"data row8 col4\" >17500</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow8_col5\" class=\"data row8 col5\" >181</td>\n",
       "                        <td id=\"T_cb81c086_2f5d_11ea_83f5_701ce71031efrow8_col6\" class=\"data row8 col6\" >0.12%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1e494a92048>"
      ]
     },
     "execution_count": 46,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_company_type=get_sub_stats_by_col(data,'company_type')\n",
    "apply_style(data_company_type)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "us_eu是欧美外企，startup是创业公司，listed是上市公司，state是国企，private是私企，foreign是非欧美外企，其他不足1000个样本的不管了。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 公司规模 Company Size"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >company_size</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow0_col0\" class=\"data row0 col0\" >10000+</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow0_col1\" class=\"data row0 col1\" >23455</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow0_col2\" class=\"data row0 col2\" >5250</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow0_col3\" class=\"data row0 col3\" >21500</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow0_col4\" class=\"data row0 col4\" >52500</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow0_col5\" class=\"data row0 col5\" >9185</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow0_col6\" class=\"data row0 col6\" >6.10%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow1_col0\" class=\"data row1 col0\" >5000-10000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow1_col1\" class=\"data row1 col1\" >17625</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow1_col2\" class=\"data row1 col2\" >6526</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow1_col3\" class=\"data row1 col3\" >15000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow1_col4\" class=\"data row1 col4\" >45000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow1_col5\" class=\"data row1 col5\" >3584</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow1_col6\" class=\"data row1 col6\" >2.38%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow2_col0\" class=\"data row2 col0\" >1000-5000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow2_col1\" class=\"data row2 col1\" >16764</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow2_col2\" class=\"data row2 col2\" >5000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow2_col3\" class=\"data row2 col3\" >15000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow2_col4\" class=\"data row2 col4\" >37500</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow2_col5\" class=\"data row2 col5\" >18363</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow2_col6\" class=\"data row2 col6\" >12.20%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow3_col0\" class=\"data row3 col0\" >500-1000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow3_col1\" class=\"data row3 col1\" >16719</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow3_col2\" class=\"data row3 col2\" >5250</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow3_col3\" class=\"data row3 col3\" >15000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow3_col4\" class=\"data row3 col4\" >37500</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow3_col5\" class=\"data row3 col5\" >15637</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow3_col6\" class=\"data row3 col6\" >10.39%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow4_col0\" class=\"data row4 col0\" ></td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow4_col1\" class=\"data row4 col1\" >15752</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow4_col2\" class=\"data row4 col2\" >5948</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow4_col3\" class=\"data row4 col3\" >12500</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow4_col4\" class=\"data row4 col4\" >50000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow4_col5\" class=\"data row4 col5\" >1011</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow4_col6\" class=\"data row4 col6\" >0.67%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow5_col0\" class=\"data row5 col0\" >150-500</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow5_col1\" class=\"data row5 col1\" >15250</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow5_col2\" class=\"data row5 col2\" >5250</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow5_col3\" class=\"data row5 col3\" >14000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow5_col4\" class=\"data row5 col4\" >33659</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow5_col5\" class=\"data row5 col5\" >34579</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow5_col6\" class=\"data row5 col6\" >22.97%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow6_col0\" class=\"data row6 col0\" >50-150</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow6_col1\" class=\"data row6 col1\" >14681</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow6_col2\" class=\"data row6 col2\" >4428</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow6_col3\" class=\"data row6 col3\" >12500</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow6_col4\" class=\"data row6 col4\" >35000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow6_col5\" class=\"data row6 col5\" >44344</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow6_col6\" class=\"data row6 col6\" >29.46%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow7_col0\" class=\"data row7 col0\" >50-</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow7_col1\" class=\"data row7 col1\" >13293</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow7_col2\" class=\"data row7 col2\" >3750</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow7_col3\" class=\"data row7 col3\" >12500</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow7_col4\" class=\"data row7 col4\" >30000</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow7_col5\" class=\"data row7 col5\" >23817</td>\n",
       "                        <td id=\"T_cb94fa6c_2f5d_11ea_a2eb_701ce71031efrow7_col6\" class=\"data row7 col6\" >15.82%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1e487cd8f08>"
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_company_size=get_sub_stats_by_col(data,'company_size')\n",
    "apply_style(data_company_size)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "公司越大，工资越高"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 行业 Industry"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >industry</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow0_col0\" class=\"data row0 col0\" >finance</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow0_col1\" class=\"data row0 col1\" >17212</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow0_col2\" class=\"data row0 col2\" >5250</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow0_col3\" class=\"data row0 col3\" >16000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow0_col4\" class=\"data row0 col4\" >35000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow0_col5\" class=\"data row0 col5\" >5377</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow0_col6\" class=\"data row0 col6\" >3.57%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow1_col0\" class=\"data row1 col0\" >service</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow1_col1\" class=\"data row1 col1\" >16368</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow1_col2\" class=\"data row1 col2\" >3750</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow1_col3\" class=\"data row1 col3\" >15000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow1_col4\" class=\"data row1 col4\" >40000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow1_col5\" class=\"data row1 col5\" >1105</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow1_col6\" class=\"data row1 col6\" >0.73%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow2_col0\" class=\"data row2 col0\" >logistic</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow2_col1\" class=\"data row2 col1\" >16051</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow2_col2\" class=\"data row2 col2\" >5250</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow2_col3\" class=\"data row2 col3\" >13000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow2_col4\" class=\"data row2 col4\" >35000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow2_col5\" class=\"data row2 col5\" >1755</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow2_col6\" class=\"data row2 col6\" >1.17%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow3_col0\" class=\"data row3 col0\" >edu</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow3_col1\" class=\"data row3 col1\" >15754</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow3_col2\" class=\"data row3 col2\" >5250</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow3_col3\" class=\"data row3 col3\" >13000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow3_col4\" class=\"data row3 col4\" >37500</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow3_col5\" class=\"data row3 col5\" >8841</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow3_col6\" class=\"data row3 col6\" >5.87%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow4_col0\" class=\"data row4 col0\" >computer</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow4_col1\" class=\"data row4 col1\" >15730</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow4_col2\" class=\"data row4 col2\" >4500</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow4_col3\" class=\"data row4 col3\" >13500</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow4_col4\" class=\"data row4 col4\" >37500</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow4_col5\" class=\"data row4 col5\" >113905</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow4_col6\" class=\"data row4 col6\" >75.67%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow5_col0\" class=\"data row5 col0\" >trade</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow5_col1\" class=\"data row5 col1\" >15479</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow5_col2\" class=\"data row5 col2\" >5250</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow5_col3\" class=\"data row5 col3\" >14000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow5_col4\" class=\"data row5 col4\" >35000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow5_col5\" class=\"data row5 col5\" >8689</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow5_col6\" class=\"data row5 col6\" >5.77%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow6_col0\" class=\"data row6 col0\" >ads</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow6_col1\" class=\"data row6 col1\" >15081</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow6_col2\" class=\"data row6 col2\" >5250</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow6_col3\" class=\"data row6 col3\" >12500</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow6_col4\" class=\"data row6 col4\" >35000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow6_col5\" class=\"data row6 col5\" >2174</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow6_col6\" class=\"data row6 col6\" >1.44%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow7_col0\" class=\"data row7 col0\" >medical</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow7_col1\" class=\"data row7 col1\" >14504</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow7_col2\" class=\"data row7 col2\" >4482</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow7_col3\" class=\"data row7 col3\" >13500</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow7_col4\" class=\"data row7 col4\" >30000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow7_col5\" class=\"data row7 col5\" >3231</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow7_col6\" class=\"data row7 col6\" >2.15%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow8_col0\" class=\"data row8 col0\" >realestate</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow8_col1\" class=\"data row8 col1\" >13927</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow8_col2\" class=\"data row8 col2\" >3750</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow8_col3\" class=\"data row8 col3\" >12500</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow8_col4\" class=\"data row8 col4\" >30000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow8_col5\" class=\"data row8 col5\" >2063</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow8_col6\" class=\"data row8 col6\" >1.37%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow9_col0\" class=\"data row9 col0\" >energy</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow9_col1\" class=\"data row9 col1\" >13815</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow9_col2\" class=\"data row9 col2\" >5250</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow9_col3\" class=\"data row9 col3\" >12500</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow9_col4\" class=\"data row9 col4\" >25000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow9_col5\" class=\"data row9 col5\" >1474</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow9_col6\" class=\"data row9 col6\" >0.98%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow10_col0\" class=\"data row10 col0\" >gov</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow10_col1\" class=\"data row10 col1\" >13475</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow10_col2\" class=\"data row10 col2\" >3750</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow10_col3\" class=\"data row10 col3\" >12500</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow10_col4\" class=\"data row10 col4\" >30000</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow10_col5\" class=\"data row10 col5\" >1906</td>\n",
       "                        <td id=\"T_cbabddb4_2f5d_11ea_9824_701ce71031efrow10_col6\" class=\"data row10 col6\" >1.27%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1e494a89f88>"
      ]
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_industry=get_sub_stats_by_col(data,'industry')\n",
    "apply_style(data_industry)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
